ããã±ãŒãžã»ãã¥ãªãã£ã®ãã¹ããã©ã¯ãã£ã¹ãèåŒ±æ§æ€åºãããã³ã°ããŒãã«ãªãœãããŠã§ã¢éçºããŒã ã®ããã®ç·©åæŠç¥ã«çŠç¹ãåœãŠããäŸåé¢ä¿ç®¡çã®å æ¬çãªã¬ã€ãã
äŸåé¢ä¿ç®¡çïŒçŸä»£ã®ãœãããŠã§ã¢éçºã«ãããããã±ãŒãžã»ãã¥ãªãã£ã®ç¢ºä¿
仿¥ã®ãœãããŠã§ã¢éçºã®äžçã§ã¯ãã¢ããªã±ãŒã·ã§ã³ã¯å€éšã©ã€ãã©ãªããã¬ãŒã ã¯ãŒã¯ãããŒã«ãããªãã¡äŸåé¢ä¿ã«å€§ããäŸåããŠããŸãããããã®äŸåé¢ä¿ã¯éçºãå éãããæ©èœã匷åããäžæ¹ã§ãæœåšçãªã»ãã¥ãªãã£ãªã¹ã¯ããããããŸãããããã£ãŠã广çãªäŸåé¢ä¿ç®¡çã¯ããœãããŠã§ã¢ãµãã©ã€ãã§ãŒã³ã®ã»ãã¥ãªãã£ãšå®å šæ§ã確ä¿ããã¢ããªã±ãŒã·ã§ã³ãè匱æ§ããä¿è·ããããã«æ¥µããŠéèŠã§ãã
äŸåé¢ä¿ç®¡çãšã¯ïŒ
äŸåé¢ä¿ç®¡çãšã¯ããœãããŠã§ã¢ãããžã§ã¯ãã§äœ¿çšãããäŸåé¢ä¿ãç¹å®ã远跡ã管çããããã»ã¹ã§ããããã«ã¯ä»¥äžãå«ãŸããŸãïŒ
- äŸåé¢ä¿ã®å®£èšïŒ èšå®ãã¡ã€ã«ïŒäŸïŒ
package.jsonfor npm,requirements.txtfor pip,pom.xmlfor Maven,build.gradlefor GradleïŒã§ãå¿ èŠãªã©ã€ãã©ãªãšãã®ããŒãžã§ã³ãæå®ããããšã - äŸåé¢ä¿ã®è§£æ±ºïŒ 宣èšãããäŸåé¢ä¿ïŒããã³ããèªèº«ã®äŸåé¢ä¿ãã€ãŸãæšç§»çäŸåé¢ä¿ïŒãèªåçã«ããŠã³ããŒãããŠã€ã³ã¹ããŒã«ããããšã
- ããŒãžã§ã³ç®¡çïŒ äºææ§ã確ä¿ããç Žå£ç倿Žãé²ãããã«äŸåé¢ä¿ã®ããŒãžã§ã³ã管çããããšã
- è匱æ§ã¹ãã£ã³ïŒ äŸåé¢ä¿ã«å«ãŸããæ¢ç¥ã®è匱æ§ãç¹å®ããããšã
- ã©ã€ã»ã³ã¹ç®¡çïŒ äŸåé¢ä¿ã®ã©ã€ã»ã³ã¹ãžã®æºæ ã確å®ã«ããããšã
ããã±ãŒãžã»ãã¥ãªãã£ã¯ãªãéèŠãïŒ
ããã±ãŒãžã»ãã¥ãªãã£ãšã¯ããœãããŠã§ã¢ã§äœ¿çšãããäŸåé¢ä¿ã«é¢é£ããã»ãã¥ãªãã£ãªã¹ã¯ãç¹å®ãè©äŸ¡ã軜æžããå®è·µã§ããããã±ãŒãžã»ãã¥ãªãã£ãç¡èŠãããšãæ·±å»ãªçµæãæãå¯èœæ§ããããŸãïŒ
- è匱æ§ã®æªçšïŒ æ»æè ã¯äŸåé¢ä¿ã®æ¢ç¥ã®è匱æ§ãæªçšããŠãã¢ããªã±ãŒã·ã§ã³ã䟵害ããããŒã¿ãçãã ããäžæ£ã¢ã¯ã»ã¹ãåŸããããããšãã§ããŸãã
- ãµãã©ã€ãã§ãŒã³æ»æïŒ 䟵害ãããäŸåé¢ä¿ã¯ãã¢ããªã±ãŒã·ã§ã³ã«æªæã®ããã³ãŒããæ³šå ¥ããããã«äœ¿çšããããã¹ãŠã®ãŠãŒã¶ãŒã«ææããå¯èœæ§ããããŸããé¡èãªäŸã¯SolarWindsã®ãµãã©ã€ãã§ãŒã³æ»æã§ãã
- ããŒã¿äŸµå®³ïŒ ããŒã¿ããŒã¹ãã©ã€ãããã®ä»ã®ããŒã¿é¢é£ã©ã€ãã©ãªã®è匱æ§ã¯ãããŒã¿äŸµå®³ãæ©å¯æ å ±ã®æå€±ã«ã€ãªããå¯èœæ§ããããŸãã
- è©å€ãžã®æå®³ïŒ ã»ãã¥ãªãã£äŸµå®³ã¯ãäŒæ¥ã®è©å€ãèããæãªãã顧客ã®ä¿¡é Œã䟵é£ããå¯èœæ§ããããŸãã
- æ³çããã³èŠå¶äžã®åœ±é¿ïŒ GDPRãHIPAAãªã©ã®å€ãã®èŠå¶ã§ã¯ãçµç¹ã¯æ©å¯ããŒã¿ãä¿è·ããããšãæ±ããããŠãããããã«ã¯ãœãããŠã§ã¢ã®äŸåé¢ä¿ã«ãããè匱æ§ãžã®å¯ŸåŠãå«ãŸããŸãã
äžè¬çãªäŸåé¢ä¿ã®è匱æ§
äŸåé¢ä¿ã«ã¯ãããã€ãã®ã¿ã€ãã®è匱æ§ãååšããå¯èœæ§ããããŸãïŒ
- SQLã€ã³ãžã§ã¯ã·ã§ã³ïŒ ãŠãŒã¶ãŒããæäŸãããããŒã¿ãé©åãªãµãã¿ã€ãºãªãã«SQLã¯ãšãªã«æ¿å ¥ãããããšã§çºçããæ»æè ãä»»æã®SQLã³ãã³ããå®è¡ã§ããããã«ãªããŸãã
- ã¯ãã¹ãµã€ãã¹ã¯ãªããã£ã³ã°ïŒXSSïŒïŒ æ»æè ãä»ã®ãŠãŒã¶ãŒãé²èЧãããŠã§ãããŒãžã«æªæã®ããã¹ã¯ãªãããæ³šå ¥ã§ããããã«ããŸãã
- ãªã¢ãŒãã³ãŒãå®è¡ïŒRCEïŒïŒ æ»æè ããµãŒããŒãŸãã¯ã¯ã©ã€ã¢ã³ããã·ã³ã§ä»»æã®ã³ãŒããå®è¡ã§ããããã«ããŸãã
- ãµãŒãã¹æåŠïŒDoSïŒïŒ ã·ã¹ãã ããªã¯ãšã¹ãã§å§åããæ£åœãªãŠãŒã¶ãŒãå©çšã§ããªããããŸãã
- èªèšŒãã€ãã¹ïŒ æ»æè ãèªèšŒã¡ã«ããºã ããã€ãã¹ããŠäžæ£ã¢ã¯ã»ã¹ãåŸãããšãå¯èœã«ããŸãã
- ãã¹ãã©ããŒãµã«ïŒ æ»æè ãæå³ãããç¯å²å€ã®ãã¡ã€ã«ããã£ã¬ã¯ããªã«ã¢ã¯ã»ã¹ã§ããããã«ããŸãã
- ãã·ãªã¢ã©ã€ãŒãŒã·ã§ã³ã®è匱æ§ïŒ ä¿¡é Œã§ããªãããŒã¿ããã·ãªã¢ã©ã€ãºããããšãã«çºçããã³ãŒãå®è¡ã«ã€ãªããå¯èœæ§ããããŸãã
ãããã®è匱æ§ã¯ãå€ãã®å ŽåãNational Vulnerability Database (NVD)ãCommon Vulnerabilities and Exposures (CVE)ãªã¹ãã®ãããªè匱æ§ããŒã¿ããŒã¹ã§å ¬éãããŸããããŒã«ã¯ãããã®ããŒã¿ããŒã¹ã䜿çšããŠãè匱ãªäŸåé¢ä¿ãç¹å®ã§ããŸãã
å®å šãªäŸåé¢ä¿ç®¡çã®ããã®ãã¹ããã©ã¯ãã£ã¹
å ç¢ãªäŸåé¢ä¿ç®¡çã®å®è·µã¯ãã»ãã¥ãªãã£ãªã¹ã¯ã軜æžããããã«äžå¯æ¬ ã§ãã以äžã«äž»èŠãªãã¹ããã©ã¯ãã£ã¹ãããã€ã瀺ããŸãïŒ
1. äŸåé¢ä¿ç®¡çããŒã«ã䜿çšãã
ããã°ã©ãã³ã°èšèªãšãšã³ã·ã¹ãã ã«é©ããå°çšã®äŸåé¢ä¿ç®¡çããŒã«ã䜿çšããŠãã ãããäžè¬çãªéžæè¢ã¯æ¬¡ã®ãšããã§ãïŒ
- npm (Node Package Manager)ïŒ JavaScriptãããžã§ã¯ãçšã
- pip (Pip Installs Packages)ïŒ Pythonãããžã§ã¯ãçšã
- MavenïŒ Javaãããžã§ã¯ãçšã
- GradleïŒ JavaãKotlinãGroovyããã®ä»ã®èšèªçšã®ãã«ãèªååããŒã«ãMavenããæè»ã§ãã
- NuGetïŒ .NETãããžã§ã¯ãçšã
- BundlerïŒ Rubyãããžã§ã¯ãçšã
- ComposerïŒ PHPãããžã§ã¯ãçšã
- Go ModulesïŒ Goãããžã§ã¯ãçšã
ãããã®ããŒã«ã¯ãäŸåé¢ä¿ã®å®£èšã解決ãããŒãžã§ã³ç®¡çã®ããã»ã¹ãèªååããäŸåé¢ä¿ãšãã®ããŒãžã§ã³ã®è¿œè·¡ã容æã«ããŸãã
2. äŸåé¢ä¿ãããã¯ããããŒãžã§ã³ãåºå®ãã
äŸåé¢ä¿ã®ããã¯ãšã¯ããããžã§ã¯ãã§äœ¿çšããäŸåé¢ä¿ã®æ£ç¢ºãªããŒãžã§ã³ãæå®ããããšã§ããããã«ãããäŸåé¢ä¿ã®æŽæ°ã«ãã£ãŠåŒãèµ·ããããäºæããªãåäœãé²ããç°ãªãç°å¢éã§ã¢ããªã±ãŒã·ã§ã³ãäžè²«ããŠåäœããããšãä¿èšŒããŸããããŒãžã§ã³åºå®ïŒæ£ç¢ºãªããŒãžã§ã³çªå·ãæå®ããããšïŒã¯ãæã峿 Œãªããã¯åœ¢åŒã§ãã
äŸãã°ãpackage.jsonã§ã¯ã"lodash": "^4.0.0"ã®ãããªããŒãžã§ã³ç¯å²ã®ä»£ããã«"lodash": "4.17.21"ã®ãããªæ£ç¢ºãªããŒãžã§ã³çªå·ã䜿çšã§ããŸããåæ§ã®ã¡ã«ããºã ã¯ä»ã®ããã±ãŒãžãããŒãžã£ã«ãååšããŸãã
äŸåé¢ä¿ããã¯ãã¡ã€ã«ïŒäŸïŒnpmã®package-lock.jsonãpip freeze > requirements.txtã䜿ã£ãpipã®requirements.txtãpom.xmlã®ããŒãžã§ãã³ã°ïŒã¯ãæšç§»çäŸåé¢ä¿ãå«ããã¹ãŠã®äŸåé¢ä¿ã®æ£ç¢ºãªããŒãžã§ã³ãèšé²ããäžè²«ãããã«ããä¿èšŒããŸãã
3. 宿çã«è匱æ§ãã¹ãã£ã³ãã
èªååãããè匱æ§ã¹ãã£ã³ãå®è£ ããŠãäŸåé¢ä¿ã®æ¢ç¥ã®è匱æ§ãç¹å®ããŸããCI/CDãã€ãã©ã€ã³ã«è匱æ§ã¹ãã£ã³ãçµ±åãããã¹ãŠã®ãã«ããè匱æ§ã«ã€ããŠãã§ãã¯ãããããã«ããŸãã
è匱æ§ã¹ãã£ã³ã«åœ¹ç«ã€ããŒã«ãããã€ããããŸãïŒ
- OWASP Dependency-CheckïŒ Javaã.NETããã®ä»ã®ãããžã§ã¯ãã§æ¢ç¥ã®è匱ãªã³ã³ããŒãã³ããç¹å®ããç¡æã®ãªãŒãã³ãœãŒã¹ããŒã«ã
- SnykïŒ æ§ã ãªããã°ã©ãã³ã°èšèªãšãšã³ã·ã¹ãã ã«å¯ŸããŠè匱æ§ã¹ãã£ã³ãšä¿®æ£ã¢ããã€ã¹ãæäŸããåçšããŒã«ã
- WhiteSource BoltïŒ è匱æ§ã¹ãã£ã³ãšã©ã€ã»ã³ã¹ã³ã³ãã©ã€ã¢ã³ã¹åæãæäŸããç¡æããŒã«ã
- GitHub Security AlertsïŒ GitHubã¯ãªããžããªã®æ¢ç¥ã®è匱æ§ãèªåçã«ã¹ãã£ã³ããã¡ã³ãããŒã«èŠåããŸãã
- JFrog XrayïŒ ãœãããŠã§ã¢éçºã©ã€ããµã€ã¯ã«å šäœã§ãã€ããªãšäŸåé¢ä¿ã®ç¶ç¶çãªã»ãã¥ãªãã£ãšã³ã³ãã©ã€ã¢ã³ã¹ã¹ãã£ã³ãæäŸããåçšããŒã«ã
- SonarQube/SonarLintïŒ åºç¯ãªã³ãŒãå質åæã®äžç°ãšããŠãäžéšã®äŸåé¢ä¿ã®è匱æ§ãæ€åºã§ããŸãã
ãããã®ããŒã«ã¯ããããžã§ã¯ãã®äŸåé¢ä¿ãNational Vulnerability Database (NVD)ãCVEãªã¹ãã®ãããªè匱æ§ããŒã¿ããŒã¹ãšæ¯èŒããè匱æ§ãçºèŠãããå Žåã«èŠåãæäŸããŸãã
4. äŸåé¢ä¿ãææ°ã®ç¶æ ã«ä¿ã€
æ¢ç¥ã®è匱æ§ã«ããããåœãŠãããã宿çã«äŸåé¢ä¿ãææ°ããŒãžã§ã³ã«æŽæ°ããŠãã ããããã ããäŸåé¢ä¿ãæŽæ°ããéã«ã¯æ³šæãå¿ èŠã§ããæŽæ°ã«ãã£ãŠç Žå£ç倿Žãå°å ¥ãããããšããããŸããäŸåé¢ä¿ãæŽæ°ããåŸã¯ããã¹ãŠãæåŸ ã©ããã«åäœããããšã確èªããããã«ãã¢ããªã±ãŒã·ã§ã³ã培åºçã«ãã¹ãããŠãã ããã
次ã®ãããªèªåäŸåé¢ä¿æŽæ°ããŒã«ã®äœ¿çšãæ€èšããŠãã ããïŒ
- DependabotïŒ GitHubãªããžããªã®äŸåé¢ä¿ãæŽæ°ããããã®ãã«ãªã¯ãšã¹ããèªåçã«äœæããŸãã
- RenovateïŒ Dependabotãšåæ§ã®ããŒã«ã§ãããåºç¯ãªããã±ãŒãžãããŒãžã£ãšãã©ãããã©ãŒã ããµããŒãããŸãã
- npm updateïŒ
package.jsonãã¡ã€ã«ã§æå®ãããããŒãžã§ã³ç¯å²ã§èš±å¯ãããææ°ããŒãžã§ã³ã«äŸåé¢ä¿ãæŽæ°ããŸãã - pip install --upgradeïŒ ããã±ãŒãžãææ°ããŒãžã§ã³ã«ã¢ããã°ã¬ãŒãããŸãã
5. æå°ããŒãžã§ã³ããªã·ãŒã匷å¶ãã
æ¢ç¥ã®è匱æ§ãããããŸãã¯å€ãäŸåé¢ä¿ã®äœ¿çšãçŠæ¢ããããªã·ãŒã確ç«ããŸããããã«ãããéçºè ãè匱ãªäŸåé¢ä¿ãã³ãŒãããŒã¹ã«å°å ¥ããã®ãé²ãããšãã§ããŸãã
6. ãœãããŠã§ã¢ã³ã³ããžã·ã§ã³è§£æïŒSCAïŒããŒã«ã䜿çšãã
SCAããŒã«ã¯ãã¢ããªã±ãŒã·ã§ã³ã§äœ¿çšããããªãŒãã³ãœãŒã¹ã³ã³ããŒãã³ãïŒã©ã€ã»ã³ã¹ãè匱æ§ãå«ãïŒã«é¢ããå æ¬çãªå¯èŠæ§ãæäŸããŸããSCAããŒã«ã¯ãæšç§»çäŸåé¢ä¿ãç¹å®ã远跡ããã®ã«ã圹ç«ã¡ãŸãã
SCAããŒã«ã®äŸã¯æ¬¡ã®ãšããã§ãïŒ
- SnykïŒ ïŒåè¿°ïŒ
- Black DuckïŒ ãªãŒãã³ãœãŒã¹ã³ã³ããŒãã³ããšãã®è匱æ§ã«é¢ããè©³çŽ°ãªæ å ±ãæäŸããåçšSCAããŒã«ã
- Veracode Software Composition AnalysisïŒ ãªãŒãã³ãœãŒã¹ã®ãªã¹ã¯ãç¹å®ã管çããã®ã«åœ¹ç«ã€åçšããŒã«ã
7. ã»ãã¥ã¢ãªéçºã©ã€ããµã€ã¯ã«ïŒSDLCïŒãå®è£ ãã
èŠä»¶åéãããããã€ã¡ã³ããã¡ã³ããã³ã¹ãŸã§ããœãããŠã§ã¢éçºã©ã€ããµã€ã¯ã«ã®ãã¹ãŠã®æ®µéã«ã»ãã¥ãªãã£ã®èæ ®äºé ãçµ±åããŸããããã«ã¯ãè åšã¢ããªã³ã°ãã»ãã¥ãªãã£ã³ãŒãã¬ãã¥ãŒãäŸµå ¥ãã¹ãã®å®æœãå«ãŸããŸãã
8. éçºè ã«ã»ãã¥ã¢ã³ãŒãã£ã³ã°ã®å®è·µã«ã€ããŠæè²ãã
éçºè ã«ãäžè¬çãªè匱æ§ãåé¿ããæ¹æ³ãäŸåé¢ä¿ç®¡çããŒã«ã广çã«äœ¿çšããæ¹æ³ãªã©ãã»ãã¥ã¢ã³ãŒãã£ã³ã°ã®å®è·µã«é¢ãããã¬ãŒãã³ã°ãæäŸããŸããéçºè ãææ°ã®ã»ãã¥ãªãã£è åšããã¹ããã©ã¯ãã£ã¹ã«ã€ããŠåžžã«ææ°ã®æ å ±ãåŸãããšã奚å±ããŸãã
9. æ¬çªç°å¢ã®äŸåé¢ä¿ãç£èŠãã
æ¬çªç°å¢ã®äŸåé¢ä¿ãç¶ç¶çã«ç£èŠããæ°ããªè匱æ§ã«å¯Ÿå¿ããŸããããã«ãããæ°ããªè åšã«è¿ éã«å¯Ÿå¿ããæœåšçãªãªã¹ã¯ã軜æžã§ããŸããã©ã³ã¿ã€ã ã¢ããªã±ãŒã·ã§ã³èªå·±ä¿è·ïŒRASPïŒããŒã«ã䜿çšããŠããªã¢ã«ã¿ã€ã ã§æ»æãæ€åºãé²åŸ¡ããŸãã
10. äŸåé¢ä¿ã°ã©ãã宿çã«ç£æ»ãã
äŸåé¢ä¿ã°ã©ãã¯ããããžã§ã¯ããšãã®äŸåé¢ä¿ïŒæšç§»çäŸåé¢ä¿ãå«ãïŒãšã®é¢ä¿ãå¯èŠåããŸããäŸåé¢ä¿ã°ã©ãã宿çã«ç£æ»ããããšã§ã埪ç°äŸåã倿°ã®æšç§»çäŸåãæã€äŸåé¢ä¿ãªã©ã®æœåšçãªãªã¹ã¯ãç¹å®ã§ããŸãã
11. ãã©ã€ããŒãããã±ãŒãžã¬ãžã¹ããªã®äœ¿çšãæ€èšãã
æ©å¯æ§ã®é«ãããŸãã¯ç¬èªã®äŸåé¢ä¿ã«ã€ããŠã¯ãäžæ£ãªã¢ã¯ã»ã¹ã倿Žãé²ãããã«ãã©ã€ããŒãããã±ãŒãžã¬ãžã¹ããªã®äœ¿çšãæ€èšããŠãã ããããã©ã€ããŒãããã±ãŒãžã¬ãžã¹ããªã䜿çšãããšãç¬èªã®ããã±ãŒãžããã¹ããã誰ãã¢ã¯ã»ã¹ã§ããããå¶åŸ¡ã§ããŸãã
ãã©ã€ããŒãããã±ãŒãžã¬ãžã¹ããªã®äŸã¯æ¬¡ã®ãšããã§ãïŒ
- npm EnterpriseïŒ npmããã±ãŒãžçšã®ãã©ã€ããŒãããã±ãŒãžã¬ãžã¹ããªã
- JFrog ArtifactoryïŒ æ§ã ãªããã±ãŒãžåœ¢åŒããµããŒããããŠãããŒãµã«ã¢ãŒãã£ãã¡ã¯ããªããžããªãããŒãžã£ã
- Sonatype Nexus RepositoryïŒ ããäžã€ã®ãŠãããŒãµã«ã¢ãŒãã£ãã¡ã¯ããªããžããªãããŒãžã£ã
12. ã€ã³ã·ãã³ãå¯Ÿå¿æé ã確ç«ãã
è匱ãªäŸåé¢ä¿ã«é¢é£ããã»ãã¥ãªãã£ã€ã³ã·ãã³ãã«å¯ŸåŠããããã®ã€ã³ã·ãã³ãå¯Ÿå¿æé ãçå®ããŸããããã«ã¯ã圹å²ãšè²¬ä»»ã®å®çŸ©ãã³ãã¥ãã±ãŒã·ã§ã³ãã£ãã«ã®ç¢ºç«ãå°ã蟌ããæ ¹çµ¶ãå埩ã®ããã®æé ã®æŠèŠãå«ãŸããŸãã
äžé©åãªäŸåé¢ä¿ç®¡çã«èµ·å ããã»ãã¥ãªãã£è匱æ§ã®äŸ
ããã€ãã®æ³šç®ãéããã»ãã¥ãªãã£ã€ã³ã·ãã³ãã¯ãäžé©åãªäŸåé¢ä¿ç®¡çã«èµ·å ããŠããŸãïŒ
- EquifaxããŒã¿äŸµå®³ïŒ2017幎ïŒïŒ Equifaxã¯ãåºã䜿çšãããŠãããªãŒãã³ãœãŒã¹ã®Webã¢ããªã±ãŒã·ã§ã³ãã¬ãŒã ã¯ãŒã¯ã§ããApache Strutsã®è匱æ§ãåå ã§ãå€§èŠæš¡ãªããŒã¿äŸµå®³ã«èŠèãããŸãããEquifaxã¯è匱æ§ãžã®ãããé©çšã驿ã«è¡ããªãã£ããããæ»æè ã¯æ°çŸäžäººã®é¡§å®¢ããæ©å¯ããŒã¿ãçãããšãã§ããŸãããããã¯ãäŸåé¢ä¿ãææ°ã®ç¶æ ã«ä¿ã€ããšã®éèŠæ§ãæµ®ã圫ãã«ããŠããŸãã
- SolarWindsãµãã©ã€ãã§ãŒã³æ»æïŒ2020幎ïŒïŒ æ»æè ã¯SolarWindsã®Orionãã©ãããã©ãŒã ã䟵害ãããœãããŠã§ã¢ã¢ããããŒãã«æªæã®ããã³ãŒããæ³šå ¥ããŸããããã®ã¢ããããŒãã¯äœåãã®é¡§å®¢ã«é åžãããŸãããããã¯ããµãã©ã€ãã§ãŒã³æ»æã®ãªã¹ã¯ãšããœãããŠã§ã¢ã¢ããããŒãã®å®å šæ§ãæ€èšŒããããšã®éèŠæ§ãæµ®ã圫ãã«ããŠããŸãã
- Left-Padã€ã³ã·ãã³ãïŒ2016幎ïŒïŒ äžäººã®éçºè ããå°ãããªãããåºã䜿ãããŠãããleft-padããšããnpmããã±ãŒãžãéå ¬éã«ããããšã§ãäœåãã®ãããžã§ã¯ããå£ããŸãããããã¯ãåäžé害ç¹ãæã€äŸåé¢ä¿ã«äŸåãããªã¹ã¯ãšãããã¯ã¢ãããã©ã³ãæã€ããšã®éèŠæ§ã瀺ããŠããŸããçŽæ¥çãªã»ãã¥ãªãã£è匱æ§ã§ã¯ãããŸããããå€éšã®äŸåé¢ä¿ã«äŸåããããšã®è匱æ§ã瀺ããŠããŸãã
ãªãŒãã³ãœãŒã¹ã»ãã¥ãªãã£ã«é¢ããåãçµã¿
ããã€ãã®çµç¹ãã€ãã·ã¢ãããããªãŒãã³ãœãŒã¹ã»ãã¥ãªãã£ã®åäžã«åãçµãã§ããŸãïŒ
- Open Source Security Foundation (OpenSSF)ïŒ ãªãŒãã³ãœãŒã¹ãœãããŠã§ã¢ã®ã»ãã¥ãªãã£åäžãç®æãå ±åã®åãçµã¿ã
- OWASP (Open Web Application Security Project)ïŒ ãœãããŠã§ã¢ã®ã»ãã¥ãªãã£åäžã«å°å¿µããéå¶å©å£äœã
- CVE (Common Vulnerabilities and Exposures)ïŒ å ¬ã«ç¥ãããŠããæ å ±ã»ãã¥ãªãã£ã®è匱æ§ãšé²åºã®èŸæžã
- NVD (National Vulnerability Database)ïŒ æšæºããŒã¹ã®è匱æ§ç®¡çããŒã¿ã®ç±³åœæ¿åºãªããžããªã
çµè«
广çãªäŸåé¢ä¿ç®¡çã¯ãçŸä»£ã®ãœãããŠã§ã¢ã¢ããªã±ãŒã·ã§ã³ã®ã»ãã¥ãªãã£ãšå®å šæ§ã確ä¿ããããã«äžå¯æ¬ ã§ãããã®ã¬ã€ãã§æŠèª¬ãããã¹ããã©ã¯ãã£ã¹ãå®è£ ããããšã§ãè匱ãªäŸåé¢ä¿ã«é¢é£ãããªã¹ã¯ã軜æžããã¢ããªã±ãŒã·ã§ã³ãæ»æããä¿è·ããããšãã§ããŸãã宿çãªè匱æ§ã¹ãã£ã³ãäŸåé¢ä¿ã®ææ°åãéçºè ãžã®ã»ãã¥ã¢ã³ãŒãã£ã³ã°ã®å®è·µã«é¢ããæè²ã¯ãå®å šãªãœãããŠã§ã¢ãµãã©ã€ãã§ãŒã³ãç¶æããããã®äžå¯æ¬ ãªã¹ãããã§ããã»ãã¥ãªãã£ã¯ç¶ç¶çãªããã»ã¹ã§ãããæ°ããªè åšã«å ãããããã«ã¯ç¶ç¶çãªèŠæãå¿ èŠã§ãããœãããŠã§ã¢éçºã®ã°ããŒãã«ãªæ§è³ªã¯ãã»ãã¥ãªãã£å¯Ÿçãå ç¢ã§ãããå Žæã«é¢ä¿ãªããã¹ãŠã®ããŒã ãšãããžã§ã¯ãã§äžè²«ããŠé©çšãããªããã°ãªããªãããšãæå³ããŸãã